Machines such as excavators, backhoes, front shovels, and the like are used for earthmoving work. These earthmoving machines have work implements which consist of boom, stick, and bucket linkages. The boom is pivotally attached to the excavating machine at one end, and to its other end is pivotally attached a stick. The bucket is pivotally attached to the free end of the stick. Each work implement linkage is controllably actuated by at least one hydraulic cylinder for movement in a vertical plane. An operator typically manipulates the work implement to perform a sequence of distinct functions which constitute a complete earthmoving cycle.
In a typical work cycle, the operator first positions the work implement at a dig location, and lowers the work implement downward until the bucket penetrates the soil. Then the operator executes a digging stroke which brings the bucket toward the excavating machine. The operator subsequently curls the bucket to capture the soil. To dump the captured load, the operator raises the work implement, swings it transversely to a specified dump location, and releases the soil by extending the stick and uncurling the bucket. The work implement is then returned to the trench location to begin the work cycle again.
There is an increasing demand in the earthmoving industry to automate the work cycle of an earthmoving machine for several reasons. Unlike a human operator, an automated earthmoving machine remains consistently productive regardless of environmental conditions and prolonged work hours. The automated earthmoving machine is ideal for applications where conditions are unsuitable or undesirable for humans. An automated machine also enables more accurate excavation and compensates for lack of operator skill.
The major components for automating earthmoving, e.g., digging material, loading material into trucks, and recognizing truck positions and orientations, are currently under development. All of these functions are performed by software in computers. A software architecture is needed to consolidate and coordinate the numerous software functions of a fully autonomous earthmoving machine.
Accordingly, the present invention is directed to overcoming one or more of the problems as set forth above.